Patch release 0.7.2: System protocol schemas and documentation#444
Patch release 0.7.2: System protocol schemas and documentation#444
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
|
This PR is very large. Consider breaking it into smaller PRs for easier review. |
There was a problem hiding this comment.
Pull request overview
Prepares the 0.7.2 patch release by adding/generated JSON Schema artifacts for system protocols and updating reference documentation + release metadata.
Changes:
- Added/generated JSON Schemas for system protocols (events + worker/task-related schemas).
- Refactored several system reference docs into schema-first reference pages and updated navigation.
- Added a changeset for patch bumps and updated the root CHANGELOG for 0.7.2.
Reviewed changes
Copilot reviewed 41 out of 41 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| packages/spec/json-schema/system/WorkerStats.json | Adds JSON Schema for worker runtime statistics. |
| packages/spec/json-schema/system/WorkerConfig.json | Adds JSON Schema for worker configuration (queues, limits, handlers). |
| packages/spec/json-schema/system/TaskStatus.json | Adds TaskStatus enum JSON Schema. |
| packages/spec/json-schema/system/TaskRetryPolicy.json | Adds TaskRetryPolicy JSON Schema. |
| packages/spec/json-schema/system/TaskPriority.json | Adds TaskPriority enum JSON Schema. |
| packages/spec/json-schema/system/TaskExecutionResult.json | Adds JSON Schema describing task execution results. |
| packages/spec/json-schema/system/Task.json | Adds JSON Schema for task objects (payload, scheduling, retries). |
| packages/spec/json-schema/system/RealTimeNotificationConfig.json | Adds JSON Schema for realtime event notification settings. |
| packages/spec/json-schema/system/QueueConfig.json | Adds JSON Schema for queue configuration (rate limits, autoscale, etc.). |
| packages/spec/json-schema/system/EventWebhookConfig.json | Adds JSON Schema for event webhooks configuration. |
| packages/spec/json-schema/system/EventTypeDefinition.json | Adds JSON Schema for event type registry entries. |
| packages/spec/json-schema/system/EventSourcingConfig.json | Adds JSON Schema for event sourcing settings. |
| packages/spec/json-schema/system/EventReplayConfig.json | Adds JSON Schema for event replay settings. |
| packages/spec/json-schema/system/EventQueueConfig.json | Adds JSON Schema for event queue settings. |
| packages/spec/json-schema/system/EventPriority.json | Adds EventPriority enum JSON Schema. |
| packages/spec/json-schema/system/EventPersistence.json | Extends persistence schema (adds storage backend enum). |
| packages/spec/json-schema/system/EventMetadata.json | Extends event metadata schema (correlation/causation/priority). |
| packages/spec/json-schema/system/EventMessageQueueConfig.json | Adds JSON Schema for MQ publishing integration. |
| packages/spec/json-schema/system/EventLogEntry.json | Adds JSON Schema for persisted/observed event log entries. |
| packages/spec/json-schema/system/EventHandler.json | Extends event handler schema (adds id + retry policy). |
| packages/spec/json-schema/system/EventBusConfig.json | Adds comprehensive JSON Schema for event bus configuration. |
| packages/spec/json-schema/system/Event.json | Extends event schema (adds id + metadata additions). |
| packages/spec/json-schema/system/DeadLetterQueueEntry.json | Adds JSON Schema for DLQ entries. |
| packages/spec/json-schema/system/BatchTask.json | Adds JSON Schema for batch task definitions. |
| packages/spec/json-schema/system/BatchProgress.json | Adds JSON Schema for batch progress reporting. |
| content/docs/references/system/startup-orchestrator.mdx | Rewrites doc to schema-focused reference format. |
| content/docs/references/system/service-registry.mdx | Rewrites doc to schema-focused reference format. |
| content/docs/references/system/plugin-validator.mdx | Rewrites doc to schema-focused reference format. |
| content/docs/references/system/plugin-lifecycle-events.mdx | Updates schema-focused reference formatting and expands schema listing. |
| content/docs/references/system/metadata-loader.mdx | Rewrites doc to schema-focused reference format and expands schema listing. |
| content/docs/references/system/meta.json | Updates system docs sidebar/navigation entries (adds worker). |
| content/docs/references/system/index.mdx | Updates system docs landing page cards (adds worker). |
| content/docs/references/system/events.mdx | Expands events reference doc with new related schemas and properties. |
| content/docs/references/integration/meta.json | Removes connector-file-storage page from integration docs navigation. |
| content/docs/references/integration/connector-file-storage.mdx | Deletes the File Storage Connector reference page. |
| content/docs/references/data/meta.json | Removes driver-mongo and driver-postgres pages from data docs navigation. |
| content/docs/references/data/driver-postgres.mdx | Deletes PostgreSQL driver reference page. |
| content/docs/references/data/driver-mongo.mdx | Deletes MongoDB driver reference page. |
| content/docs/references/automation/connector.mdx | Updates the Connector reference page source/import paths (currently incorrect). |
| CHANGELOG.md | Adds 0.7.2 release entry and updates compare links. |
| .changeset/patch-release.md | Adds patch changeset for version bumps across packages. |
| <Callout type="info"> | ||
| **Source:** `packages/spec/src/integration/connector.zod.ts` | ||
| **Source:** `packages/spec/src/automation/connector.zod.ts` | ||
| </Callout> | ||
|
|
||
| ## TypeScript Usage | ||
|
|
||
| ```typescript | ||
| import { AuthenticationSchema, ConflictResolutionSchema, ConnectorSchema, DataSyncConfigSchema } from '@objectstack/spec/integration'; | ||
| import type { Authentication, ConflictResolution, Connector, DataSyncConfig } from '@objectstack/spec/integration'; | ||
| import { AuthenticationSchema, ConflictResolutionSchema, ConnectorSchema, DataSyncConfigSchema } from '@objectstack/spec/automation'; | ||
| import type { Authentication, ConflictResolution, Connector, DataSyncConfig } from '@objectstack/spec/automation'; |
There was a problem hiding this comment.
This reference page points to packages/spec/src/automation/connector.zod.ts and imports from @objectstack/spec/automation, but there is no src/automation/connector.zod.ts and automation/index.ts does not export a Connector protocol. The Connector protocol currently lives in packages/spec/src/integration/connector.zod.ts and should be referenced/imported from @objectstack/spec/integration instead (or add the missing automation schema + exports if the move was intended).
| "durationMs": { | ||
| "type": "integer", | ||
| "description": "Execution duration in milliseconds" | ||
| }, |
There was a problem hiding this comment.
durationMs represents an execution duration, but the schema allows negative values because it has no minimum. Consider adding minimum: 0 (and updating the source Zod schema so regenerated JSON Schema stays in sync).
| --- | ||
| "@objectstack/spec": patch | ||
| "@objectstack/core": patch | ||
| "@objectstack/types": patch | ||
| "@objectstack/objectql": patch | ||
| "@objectstack/runtime": patch | ||
| "@objectstack/client": patch |
There was a problem hiding this comment.
PR description says “All packages bump to 0.7.2 via changeset”, but this changeset does not include @objectstack/metadata (which still exists as a package). Either include it here or adjust the PR description/release plan so versions stay consistent across packages.
| <Card href="./startup-orchestrator" title="Startup Orchestrator" description="Source: packages/spec/src/system/startup-orchestrator.zod.ts" /> | ||
| <Card href="./tracing" title="Tracing" description="Source: packages/spec/src/system/tracing.zod.ts" /> | ||
| <Card href="./translation" title="Translation" description="Source: packages/spec/src/system/translation.zod.ts" /> | ||
| <Card href="./worker" title="Worker" description="Source: packages/spec/src/system/worker.zod.ts" /> |
There was a problem hiding this comment.
The System docs index now links to a ./worker page, but there is no corresponding content/docs/references/system/worker.mdx in the repo. This will create a broken link in the docs navigation. Add the missing Worker reference page (and ensure it’s included in the build) or remove this card entry.
| <Card href="./worker" title="Worker" description="Source: packages/spec/src/system/worker.zod.ts" /> |
| "translation", | ||
| "worker" |
There was a problem hiding this comment.
"worker" was added to the System docs sidebar pages list, but the content/docs/references/system/worker.mdx page does not exist. This will break the generated navigation/route. Add the missing page or remove this entry.
| "translation", | |
| "worker" | |
| "translation" |
Prepares patch release 0.7.2 with updated system protocol artifacts.
Changes
Schema updates
New schemas cover:
Event,EventHandler,EventPersistence,EventBusConfig,EventQueueConfigTask,TaskRetryPolicy,WorkerConfig,WorkerStats,BatchTaskMetadataLoader,ServiceRegistry,PluginValidator,StartupOrchestratorAll packages bump to 0.7.2 via changeset. No breaking changes.
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.